package com.yunsc.store.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yunsc.common.utils.PageResult;
import com.yunsc.store.dto.UserGradeDTO;
import com.yunsc.store.entity.YunscUserGradeEntity;
import com.yunsc.store.vo.UserGradeVO;

import java.util.List;

/**
 * 用户会员等级表
 *
 * @author adan
 * @email 2028038953@qq.com
 * @date 2024-04-05 01:37:43
 */
public interface YunscUserGradeService extends IService<YunscUserGradeEntity> {

    /**
     * 查询会员等级列表（状态）
     * @param storeId 当前店铺id
     * @return 会员等级列表
     */
    List<UserGradeVO> queryUserGradeAll(Integer storeId);

    /**
     * 查询会员等级列表
     * @param currentPage 当前页
     * @param storeId 当前店铺id
     * @return 会员等级列表
     */
    PageResult<UserGradeVO> queryUserGradeList(Integer currentPage, Integer storeId);

    /**
     * 编辑会员等级
     *
     * @param userGradeParam 会员等级信息
     */
    void editUserGrade(UserGradeDTO userGradeParam);

    /**
     * 删除会员等级
     * @param gradeId 等级id
     */
    void removeUserGrade(Integer gradeId);

    /**
     * 添加会员等级
     * @param userGradeParam 会员等级信息
     * @param storeId 当前店铺id
     */
    void addUserGrade(UserGradeDTO userGradeParam, Integer storeId);

    /**
     *  根据用户id查询会员等级信息
     * @param userId 用户id
     * @return 会员等级信息
     */
    YunscUserGradeEntity queryUserGrade(Integer userId);
}

